<!DOCTYPE html>
<html lang="zh" xmlns:th="http://www.thymeleaf.org">
<head>
    <th:block th:include="include :: header('前置配置界面')" />
    <style>
        *{
            margin: 0px;
            padding: 0px;
        }
    </style>

</head>
<body>
    <h2 class="text-center">前置系统配置界面</h2>
    <hr>
    <div class="container-fluid">
        <div class="row">
            <!--关键字-->
            <div class="col-md-6">
                <div class="col-md-12" >
                    <label class="col-md-3 text-right" style="font-size: 18px;line-height: 30px;">审查关键字：</label>
                    <div class="col-md-6">
                        <input id="keywordValue" placeholder="最多10个字符,不区分大小写" class="form-control" type="text"
                               maxlength="10" required>
                    </div>
                    <button type="button" class="btn btn-md-3 btn-primary" onclick="submitHandlerKeyWord()"><i
                            class="fa fa-check"></i>添 加
                    </button>
                </div>
                <div class="col-md-12" style="margin-top: 50px;">
                    <div class="col-md-3"></div>
                    <div class="col-md-6">
                        <div class="panel panel-default">
                            <div class="panel-heading">
                                <h3 class="panel-title">关键字列表</h3>
                            </div>

                            <div class="panel-body">
                                <button id="remove" class="btn btn-danger">删除</button>
                                <table id="table01">
                                </table>
                            </div>
                        </div>
                    </div>
                    <div class="col-md-3"></div>
                </div>
            </div>
            <!--文件类型-->
            <div class="col-md-6">
                <div class="col-md-12" >
                    <label class="col-md-3 text-right" style="font-size: 18px;line-height: 30px;">文件类型：</label>
                    <div class="col-md-6">
                        <input id="fileTypeValue" placeholder="最多10个字符,不区分大小写" class="form-control" type="text"
                               maxlength="10" required>
                        <span style="color: red">注：只能输入数字、数字+字母、字母</span>
                    </div>
                    <button type="button" class="btn btn-md-3 btn-primary" onclick="submitHandlerFileType()"><i
                            class="fa fa-check"></i>添 加
                    </button>
                </div>
                <div class="col-md-12" style="margin-top: 50px;">
                    <div class="col-md-3"></div>
                    <div class="col-md-6">
                        <div class="panel panel-default">
                            <div class="panel-heading">
                                <h3 class="panel-title">文件类型列表</h3>
                            </div>
                            <div class="panel-body">
                                <button id="remove02" class="btn btn-danger">删除</button>
                                <table id="table02">
                                </table>
                            </div>
                        </div>
                    </div>
                    <div class="col-md-3"></div>
                </div>
            </div>
        </div>
    </div>
<!-- 全局js -->
<th:block th:include="include :: common-js" />
<script th:inline="javascript">
    var path = ctx + 'ConfigPage';
    $(function () {
        //1.初始化Table
        var oTable = new TableInit();
        oTable.Init();

        var fileTypeTable = new TableInit02();
        fileTypeTable.Init();
    });
    //关键字表
    var TableInit = function () {
        var oTableInit = new Object();

        //初始化Table
        oTableInit.Init = function () {
            $('#table01').bootstrapTable({
                url: path + '/list',         //请求后台的URL（*）
                method: 'post',                      //请求方式（*）
                toolbar: '#toolbar',                //工具按钮用哪个容器
                striped: true,                      //是否显示行间隔色
                cache: false,                       //是否使用缓存，默认为true，所以一般情况下需要设置一下这个属性（*）
                pagination: false,                   //是否显示分页（*）
                sortable: false,                     //是否启用排序
                sortOrder: "asc",                   //排序方式
                queryParams: oTableInit.queryParams,//传递参数（*）
                sidePagination: "server",           //分页方式：client客户端分页，server服务端分页（*）
                pageNumber:1,                       //初始化加载第一页，默认第一页
                pageSize: 10,                       //每页的记录行数（*）
                pageList: [10, 25, 50, 100],        //可供选择的每页的行数（*）
                search: false,                       //是否显示表格搜索，此搜索是客户端搜索，不会进服务端，所以，个人感觉意义不大
                strictSearch: false,
                showColumns: false,                  //是否显示所有的列
                showRefresh: false,                  //是否显示刷新按钮
                minimumCountColumns: 2,             //最少允许的列数
                clickToSelect: true,                //是否启用点击选中行
                height: 500,                        //行高，如果没有设置height属性，表格自动根据记录条数觉得表格高度
                uniqueId: "ID",                     //每一行的唯一标识，一般为主键列
                showToggle:false,                    //是否显示详细视图和列表视图的切换按钮
                cardView: false,                    //是否显示详细视图
                detailView: false,                   //是否显示父子表
                columns: [{
                    checkbox: true
                },{
                    field: 'keywordId',
                    title: '主键',
                    visible: false
                },{
                    field: 'keywordValue',
                    title: '名称'
                }, ]
            });

            // 删除按钮事件
            $("#remove").on("click", function() {
                if (!confirm("是否确认删除？"))
                    return;
                var rows = $("#table01").bootstrapTable('getSelections');// 获得要删除的数据
                if (rows.length == 0) {// rows 主要是为了判断是否选中，下面的else内容才是主要
                    alert("请先选择要删除的记录!");
                    return;
                } else {
                    var ids = new Array();// 声明一个数组
                    $(rows).each(function() {// 通过获得别选中的来进行遍历
                        ids.push(this.keywordId);// cid为获得到的整条数据中的一列
                    });
                    deleteMs(ids)
                }
            })
            function deleteMs(ids) {
                $.ajax({
                    url : path + "/delete",
                    data : "ids=" + ids,
                    type : "post",
                    dataType : "json",
                    success : function(data) {

                        if (data.result!=-1){
                            alert("删除成功!");
                        }else {
                            alert("删除失败!");
                        }
                        $('#table01').bootstrapTable('refresh');
                    }
                });
            }

        };

        return oTableInit;
    };

    //文件类型表
    var TableInit02 = function(){
        var oTableInit = new Object();

        //初始化Table
        oTableInit.Init = function () {
            $('#table02').bootstrapTable({
                url: path + '/list02',         //请求后台的URL（*）
                method: 'post',                      //请求方式（*）
                toolbar: '#toolbar',                //工具按钮用哪个容器
                striped: true,                      //是否显示行间隔色
                cache: false,                       //是否使用缓存，默认为true，所以一般情况下需要设置一下这个属性（*）
                pagination: false,                   //是否显示分页（*）
                sortable: false,                     //是否启用排序
                sortOrder: "asc",                   //排序方式
                queryParams: oTableInit.queryParams,//传递参数（*）
                sidePagination: "server",           //分页方式：client客户端分页，server服务端分页（*）
                pageNumber:1,                       //初始化加载第一页，默认第一页
                pageSize: 10,                       //每页的记录行数（*）
                pageList: [10, 25, 50, 100],        //可供选择的每页的行数（*）
                search: false,                       //是否显示表格搜索，此搜索是客户端搜索，不会进服务端，所以，个人感觉意义不大
                strictSearch: false,
                showColumns: false,                  //是否显示所有的列
                showRefresh: false,                  //是否显示刷新按钮
                minimumCountColumns: 2,             //最少允许的列数
                clickToSelect: true,                //是否启用点击选中行
                height: 500,                        //行高，如果没有设置height属性，表格自动根据记录条数觉得表格高度
                uniqueId: "ID",                     //每一行的唯一标识，一般为主键列
                showToggle:false,                    //是否显示详细视图和列表视图的切换按钮
                cardView: false,                    //是否显示详细视图
                detailView: false,                   //是否显示父子表
                columns: [{
                    checkbox: true
                },{
                    field: 'typeId',
                    title: '主键',
                    visible: false
                },{
                    field: 'typeValue',
                    title: '类型'
                }, ]
            });

            // 删除按钮事件
            $("#remove02").on("click", function() {
                if (!confirm("是否确认删除？"))
                    return;
                var rows = $("#table02").bootstrapTable('getSelections');// 获得要删除的数据
                if (rows.length == 0) {// rows 主要是为了判断是否选中，下面的else内容才是主要
                    alert("请先选择要删除的记录!");
                    return;
                } else {
                    var ids = new Array();// 声明一个数组
                    $(rows).each(function() {// 通过获得别选中的来进行遍历
                        ids.push(this.typeId);// cid为获得到的整条数据中的一列
                    });
                    deleteMs02(ids)
                }
            })
            function deleteMs02(ids) {
                $.ajax({
                    url : path + "/delete02",
                    data : "ids=" + ids,
                    type : "post",
                    dataType : "json",
                    success : function(data) {

                        if (data.result!=-1){
                            alert("删除成功!");
                        }else {
                            alert("删除失败!");
                        }
                        $('#table02').bootstrapTable('refresh');
                    }
                });
            }

        };

        return oTableInit;
    }


    // 添加文件类型
    function submitHandlerFileType() {
        var fileType = $("#fileTypeValue").val();

        if (fileType==null||fileType.trim()==""){
            alert("文件类型不能为空!");
        }else{


            if(/\W/.test(fileType)){
                alert("只能输入英文或数字!");
                return;
            }


            var config = {
                url: path + "/add02",
                type:"post",
                data:{typeValue:fileType},
                dataType:"json",
                success:function(data){
                    if (data.result==-1){
                        layer.msg("插入失败!",{time:1000})
                    }else if (data.result==-2){
                        layer.msg("该文件类型已存在!",{time:1000})
                    }else {
                        layer.msg("插入成功!",{time:1000})
                    }
                    $('#table02').bootstrapTable('refresh');
                    $("#fileTypeValue").val("");
                }
            }
            $.ajax(config);
        }

    }
    // 添加关键字类型
    function submitHandlerKeyWord() {
        var keys = $("#keywordValue").val();
        var keywordType = 0;
        if (keys==null||keys.trim()==""){
            alert("关键字不能为空!");
        }else{

            if(/.*[\u4e00-\u9fa5]+.*$/.test(keys)) {

                keywordType=1;
            }

            var config = {
                url: path + "/add",
                type:"post",
                data:{keywordValue:keys,keywordType:keywordType},
                dataType:"json",
                success:function(data){
                    if (data.result==-1){
                        layer.msg("插入失败!",{time:1000})
                    }else if(data.result==-2){
                        layer.msg("该关键字已经存在!",{time:1000})
                    }else{
                        layer.msg("插入成功!",{time:1000})
                    }
                    $('#table01').bootstrapTable('refresh');
                    $("#keywordValue").val("");
                }
            }
            $.ajax(config);
        }

    }
</script>
</body>
</html>